%ifndef BOOT_REALMODEUTILITY_SETCURSORPOSITION
%define BOOT_REALMODEUTILITY_SETCURSORPOSITION
; SetCursorPosition(unsigned short page_number, unsigned short position)
; @param 指针位置，高字节表示行，低字节表示列
bits 16
Boot.RealModeUtility.SetCursorPosition:
Boot.RealModeUtility.SetCursorPosition.Initialize:
    pusha
    mov bp, sp
    mov ah, 0x02
    mov bh, [bp + 18] ; 页号
    mov dx, [bp + 20] ; 位置
Boot.RealModeUtility.SetCursorPosition.Set:
    int 0x10
Boot.RealModeUtility.SetCursorPosition.Return:
    popa
    ret
%endif